package com.ruoyi.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.system.domain.BsJingqu;
import com.ruoyi.system.domain.ro.BsJingquSearchPage;
import com.ruoyi.system.domain.ro.index.*;

import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Map;

/**
 *
 */
public interface BsJingquService extends IService<BsJingqu> {

    boolean saveAndSaveJingDian(BsJingqu bsJingqu);

    List<BsJingqu> listWithJingDian();

    boolean updateAndupdateJingDian(BsJingqu bsJingqu);

    boolean logicRemove(List<Long> asList);

    BsJingqu getJingQuDetails(Long jingquId);

    Map<String, Object> getSituation(Long id);

    Map<String, Object> getInfo(Long id);

    void runAsyncAppendOrderNum(HashSet<Long> ids);

    void runAsyncAppendOrderNum(String jingquId);

    List<Map<String, Object>> toTree(List<BsJingqu> jingquList);

    List<BsJingqu> listPage(BsJingquSearchPage param);

    PeopleNum getPeopleNum();

    List<JingquPeopleNum> getJingquPeople(Integer limit);

    List<CityPeopleNum> getCityPeopleNum();

    List<CityPeopleNum> dealWithCity(List<CityPeopleNum> cityPeopleNum);

    List<AgePeopleNum> dealWithAge(List<CityPeopleNum> cityPeopleNum);

    List<TimePeopleNum> getTimePeopleNum();

    int getPeopleNumForDay(Date date);
}
